<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>PintarOS: include/command.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">PintarOS
   </div>
   <div id="projectbrief">Operating System for Smart Card</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Groups</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">command.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Header file for command interpreter and ISO command handler.  
<a href="#details">More...</a></p>

<p><a href="command_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a10172e55272b59032d349ee377429480"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10172e55272b59032d349ee377429480"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DEBUG_WRITE</b>&#160;&#160;&#160;0x02</td></tr>
<tr class="separator:a10172e55272b59032d349ee377429480"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6d584586af2df0943c2bdd6f37ac7b5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab6d584586af2df0943c2bdd6f37ac7b5"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DEBUG_READ</b>&#160;&#160;&#160;0x04</td></tr>
<tr class="separator:ab6d584586af2df0943c2bdd6f37ac7b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2523a8d1e85f87f9228691e49d8a223"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af2523a8d1e85f87f9228691e49d8a223"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DEBUG_GETCURRENT</b>&#160;&#160;&#160;0x22</td></tr>
<tr class="separator:af2523a8d1e85f87f9228691e49d8a223"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55303a533f53ece61a7a30039b64b553"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55303a533f53ece61a7a30039b64b553"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DEBUG_GETSECURITY</b>&#160;&#160;&#160;0x24</td></tr>
<tr class="separator:a55303a533f53ece61a7a30039b64b553"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a104b82b206a718b953caebfe39262e72"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a104b82b206a718b953caebfe39262e72"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DEBUG_GETCHALLENGE</b>&#160;&#160;&#160;0x28</td></tr>
<tr class="separator:a104b82b206a718b953caebfe39262e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd35319b6647d1f9b82ac882ffdb9902"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd35319b6647d1f9b82ac882ffdb9902"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DEBUG_ENCRYPT</b>&#160;&#160;&#160;0x26</td></tr>
<tr class="separator:afd35319b6647d1f9b82ac882ffdb9902"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a257dbde61ee37fc98055cc973c5bffc1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a257dbde61ee37fc98055cc973c5bffc1"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DEBUG_FORMAT</b>&#160;&#160;&#160;0x0a</td></tr>
<tr class="separator:a257dbde61ee37fc98055cc973c5bffc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c27c0086a2159232fa5439dc65bcfd6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c27c0086a2159232fa5439dc65bcfd6"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a3c27c0086a2159232fa5439dc65bcfd6">ISO_SELECT</a>&#160;&#160;&#160;0xA4</td></tr>
<tr class="memdesc:a3c27c0086a2159232fa5439dc65bcfd6"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 SELECT Instruction code. <br/></td></tr>
<tr class="separator:a3c27c0086a2159232fa5439dc65bcfd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69ebb90e504f144e32a1dbf8bba21bd6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69ebb90e504f144e32a1dbf8bba21bd6"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a69ebb90e504f144e32a1dbf8bba21bd6">ISO_READ_BINARY</a>&#160;&#160;&#160;0xB0</td></tr>
<tr class="memdesc:a69ebb90e504f144e32a1dbf8bba21bd6"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 READ BINARY Instruction code. <br/></td></tr>
<tr class="separator:a69ebb90e504f144e32a1dbf8bba21bd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4f814f09be08cda5b6685bb2bd34dc9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab4f814f09be08cda5b6685bb2bd34dc9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ab4f814f09be08cda5b6685bb2bd34dc9">ISO_UPDATE_BINARY</a>&#160;&#160;&#160;0xD6</td></tr>
<tr class="memdesc:ab4f814f09be08cda5b6685bb2bd34dc9"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 UPDATE BINARY Instruction code. <br/></td></tr>
<tr class="separator:ab4f814f09be08cda5b6685bb2bd34dc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed35f89fcd7896aadd20986fdf7770f8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed35f89fcd7896aadd20986fdf7770f8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#aed35f89fcd7896aadd20986fdf7770f8">ISO_READ_RECORD</a>&#160;&#160;&#160;0xB2</td></tr>
<tr class="memdesc:aed35f89fcd7896aadd20986fdf7770f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 READ RECORD Instruction code. <br/></td></tr>
<tr class="separator:aed35f89fcd7896aadd20986fdf7770f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab90f82962da33c6367cef20a21788655"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab90f82962da33c6367cef20a21788655"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ab90f82962da33c6367cef20a21788655">ISO_UPDATE_RECORD</a>&#160;&#160;&#160;0xDC</td></tr>
<tr class="memdesc:ab90f82962da33c6367cef20a21788655"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 UPDATE RECORD Instruction code. <br/></td></tr>
<tr class="separator:ab90f82962da33c6367cef20a21788655"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e680768c82bd301cd229c3de5008175"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e680768c82bd301cd229c3de5008175"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a6e680768c82bd301cd229c3de5008175">ISO_APPEND_RECORD</a>&#160;&#160;&#160;0xE2</td></tr>
<tr class="memdesc:a6e680768c82bd301cd229c3de5008175"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 APPEND RECORD Instruction code. <br/></td></tr>
<tr class="separator:a6e680768c82bd301cd229c3de5008175"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab103a2ad5707dd4ac205d673901faf16"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab103a2ad5707dd4ac205d673901faf16"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ab103a2ad5707dd4ac205d673901faf16">ISO_CREATE_FILE</a>&#160;&#160;&#160;0xE0</td></tr>
<tr class="memdesc:ab103a2ad5707dd4ac205d673901faf16"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 CREATE FILE Instruction code. <br/></td></tr>
<tr class="separator:ab103a2ad5707dd4ac205d673901faf16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e9ba7985f1ad81c44c963ce76a808d7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7e9ba7985f1ad81c44c963ce76a808d7"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a7e9ba7985f1ad81c44c963ce76a808d7">ISO_DELETE_FILE</a>&#160;&#160;&#160;0xE4</td></tr>
<tr class="memdesc:a7e9ba7985f1ad81c44c963ce76a808d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 DELETE FILE Instruction code. <br/></td></tr>
<tr class="separator:a7e9ba7985f1ad81c44c963ce76a808d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a536b66cb51606b87a785cfb1c28c4d2c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a536b66cb51606b87a785cfb1c28c4d2c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a536b66cb51606b87a785cfb1c28c4d2c">ISO_VERIFY</a>&#160;&#160;&#160;0x20</td></tr>
<tr class="memdesc:a536b66cb51606b87a785cfb1c28c4d2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 VERIFY Instruction code. <br/></td></tr>
<tr class="separator:a536b66cb51606b87a785cfb1c28c4d2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a8c37fb75f0ae4f1ea07969192fd933"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a8c37fb75f0ae4f1ea07969192fd933"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a0a8c37fb75f0ae4f1ea07969192fd933">ISO_EXT_AUTH</a>&#160;&#160;&#160;0x82</td></tr>
<tr class="memdesc:a0a8c37fb75f0ae4f1ea07969192fd933"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 EXTERNAL_AUTH Instruction code. <br/></td></tr>
<tr class="separator:a0a8c37fb75f0ae4f1ea07969192fd933"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a00d4205f23d82835358d3826ef43c8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a00d4205f23d82835358d3826ef43c8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a8a00d4205f23d82835358d3826ef43c8">ISO_INT_AUTH</a>&#160;&#160;&#160;0x88</td></tr>
<tr class="memdesc:a8a00d4205f23d82835358d3826ef43c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 INTERNAL_AUTH Instruction code. <br/></td></tr>
<tr class="separator:a8a00d4205f23d82835358d3826ef43c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a155872a14cfa442f19e9c19c7469a4cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a155872a14cfa442f19e9c19c7469a4cd"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a155872a14cfa442f19e9c19c7469a4cd">ISO_GET_CHALLENGE</a>&#160;&#160;&#160;0x84</td></tr>
<tr class="memdesc:a155872a14cfa442f19e9c19c7469a4cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">INS byte: Get Challenge. <br/></td></tr>
<tr class="separator:a155872a14cfa442f19e9c19c7469a4cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afad5cae6acdc7d5c3b3bb818efa49139"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afad5cae6acdc7d5c3b3bb818efa49139"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#afad5cae6acdc7d5c3b3bb818efa49139">ISO_LOAD</a>&#160;&#160;&#160;0xDC</td></tr>
<tr class="memdesc:afad5cae6acdc7d5c3b3bb818efa49139"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 LOAD Instruction code. <br/></td></tr>
<tr class="separator:afad5cae6acdc7d5c3b3bb818efa49139"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae06690caa58fcf64b990636bd2c82279"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae06690caa58fcf64b990636bd2c82279"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ae06690caa58fcf64b990636bd2c82279">ISO_INSTALL</a>&#160;&#160;&#160;0xDC</td></tr>
<tr class="memdesc:ae06690caa58fcf64b990636bd2c82279"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 INSTALL Instruction code. <br/></td></tr>
<tr class="separator:ae06690caa58fcf64b990636bd2c82279"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93c88d8a82fa646cdf80bce8a8170e3f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a93c88d8a82fa646cdf80bce8a8170e3f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a93c88d8a82fa646cdf80bce8a8170e3f">ISO_DELETE</a>&#160;&#160;&#160;0xDC</td></tr>
<tr class="memdesc:a93c88d8a82fa646cdf80bce8a8170e3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 DELETE Instruction code. <br/></td></tr>
<tr class="separator:a93c88d8a82fa646cdf80bce8a8170e3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1b8d33cb8f4feab7493577f1b88763e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad1b8d33cb8f4feab7493577f1b88763e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ad1b8d33cb8f4feab7493577f1b88763e">ISO_GET_RESPONSE</a>&#160;&#160;&#160;0xC0</td></tr>
<tr class="memdesc:ad1b8d33cb8f4feab7493577f1b88763e"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 GET RESPONSE Instruction code. <br/></td></tr>
<tr class="separator:ad1b8d33cb8f4feab7493577f1b88763e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ae80ba72ed08c11a9ce08702dadbf0fa3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ae80ba72ed08c11a9ce08702dadbf0fa3">Command_Interpreter</a> ()</td></tr>
<tr class="memdesc:ae80ba72ed08c11a9ce08702dadbf0fa3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interpret command APDU and call appropriate command handler.  <a href="#ae80ba72ed08c11a9ce08702dadbf0fa3">More...</a><br/></td></tr>
<tr class="separator:ae80ba72ed08c11a9ce08702dadbf0fa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a574398462bb87959eb9df7586669843c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a574398462bb87959eb9df7586669843c">Command_Select</a> ()</td></tr>
<tr class="memdesc:a574398462bb87959eb9df7586669843c"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 SELECT command handler.  <a href="#a574398462bb87959eb9df7586669843c">More...</a><br/></td></tr>
<tr class="separator:a574398462bb87959eb9df7586669843c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8030cdbe0ad5cd8b36164147a2d4a3cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a8030cdbe0ad5cd8b36164147a2d4a3cc">Command_ReadBinary</a> ()</td></tr>
<tr class="memdesc:a8030cdbe0ad5cd8b36164147a2d4a3cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 READ BINARY command handler.  <a href="#a8030cdbe0ad5cd8b36164147a2d4a3cc">More...</a><br/></td></tr>
<tr class="separator:a8030cdbe0ad5cd8b36164147a2d4a3cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0d6acbb997b0f8fddaba16d2dfe92d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ab0d6acbb997b0f8fddaba16d2dfe92d6">Command_UpdateBinary</a> ()</td></tr>
<tr class="memdesc:ab0d6acbb997b0f8fddaba16d2dfe92d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 UPDATE BINARY command handler.  <a href="#ab0d6acbb997b0f8fddaba16d2dfe92d6">More...</a><br/></td></tr>
<tr class="separator:ab0d6acbb997b0f8fddaba16d2dfe92d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac18c20afe38175573a6fc6e97b1516eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ac18c20afe38175573a6fc6e97b1516eb">Command_ReadRecord</a> ()</td></tr>
<tr class="memdesc:ac18c20afe38175573a6fc6e97b1516eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 READ RECORD command handler.  <a href="#ac18c20afe38175573a6fc6e97b1516eb">More...</a><br/></td></tr>
<tr class="separator:ac18c20afe38175573a6fc6e97b1516eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36a412a5d9fe2d9d84c018f484586660"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a36a412a5d9fe2d9d84c018f484586660">Command_UpdateRecord</a> ()</td></tr>
<tr class="memdesc:a36a412a5d9fe2d9d84c018f484586660"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 UPDATE RECORD command handler.  <a href="#a36a412a5d9fe2d9d84c018f484586660">More...</a><br/></td></tr>
<tr class="separator:a36a412a5d9fe2d9d84c018f484586660"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f8bc96429f97294f5c70c9d3d25f55e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a8f8bc96429f97294f5c70c9d3d25f55e">Command_AppendRecord</a> ()</td></tr>
<tr class="memdesc:a8f8bc96429f97294f5c70c9d3d25f55e"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 APPEND RECORD command handler.  <a href="#a8f8bc96429f97294f5c70c9d3d25f55e">More...</a><br/></td></tr>
<tr class="separator:a8f8bc96429f97294f5c70c9d3d25f55e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0fffd055068cf5e95b16290678821f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ab0fffd055068cf5e95b16290678821f0">Command_CreateFile</a> ()</td></tr>
<tr class="memdesc:ab0fffd055068cf5e95b16290678821f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 CREATE FILE command handler.  <a href="#ab0fffd055068cf5e95b16290678821f0">More...</a><br/></td></tr>
<tr class="separator:ab0fffd055068cf5e95b16290678821f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f140f75193a0588351eb754a7a120be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a6f140f75193a0588351eb754a7a120be">Command_DeleteFile</a> ()</td></tr>
<tr class="memdesc:a6f140f75193a0588351eb754a7a120be"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 DELETE FILE command handler.  <a href="#a6f140f75193a0588351eb754a7a120be">More...</a><br/></td></tr>
<tr class="separator:a6f140f75193a0588351eb754a7a120be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a756c9456e6848064f619102fb09b1834"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a756c9456e6848064f619102fb09b1834">Command_Verify</a> ()</td></tr>
<tr class="memdesc:a756c9456e6848064f619102fb09b1834"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 VERIFY command handler.  <a href="#a756c9456e6848064f619102fb09b1834">More...</a><br/></td></tr>
<tr class="separator:a756c9456e6848064f619102fb09b1834"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2b4480c24611cbf33f4d0846c3e29c5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#af2b4480c24611cbf33f4d0846c3e29c5">Command_InternalAuth</a> ()</td></tr>
<tr class="memdesc:af2b4480c24611cbf33f4d0846c3e29c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 INTERNAL_AUTH command handler.  <a href="#af2b4480c24611cbf33f4d0846c3e29c5">More...</a><br/></td></tr>
<tr class="separator:af2b4480c24611cbf33f4d0846c3e29c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaeea089a78452852cffa694d230783f4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#aaeea089a78452852cffa694d230783f4">Command_ExternalAuth</a> ()</td></tr>
<tr class="memdesc:aaeea089a78452852cffa694d230783f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 INTERNAL_AUTH command handler.  <a href="#aaeea089a78452852cffa694d230783f4">More...</a><br/></td></tr>
<tr class="separator:aaeea089a78452852cffa694d230783f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b51f330868e469212300b68b462e5b1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a3b51f330868e469212300b68b462e5b1">Command_GetChallenge</a> ()</td></tr>
<tr class="memdesc:a3b51f330868e469212300b68b462e5b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 GET RESPONSE command handler.  <a href="#a3b51f330868e469212300b68b462e5b1">More...</a><br/></td></tr>
<tr class="separator:a3b51f330868e469212300b68b462e5b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7b94cbf3c426e64bf360955b4369623"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ac7b94cbf3c426e64bf360955b4369623">Command_Load</a> ()</td></tr>
<tr class="memdesc:ac7b94cbf3c426e64bf360955b4369623"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 LOAD command handler.  <a href="#ac7b94cbf3c426e64bf360955b4369623">More...</a><br/></td></tr>
<tr class="separator:ac7b94cbf3c426e64bf360955b4369623"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad36cf4c26f564e47e18383d6c0b4b623"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#ad36cf4c26f564e47e18383d6c0b4b623">Command_Install</a> ()</td></tr>
<tr class="memdesc:ad36cf4c26f564e47e18383d6c0b4b623"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 INSTALL command handler.  <a href="#ad36cf4c26f564e47e18383d6c0b4b623">More...</a><br/></td></tr>
<tr class="separator:ad36cf4c26f564e47e18383d6c0b4b623"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b1b052eccdc8baab4271b9bbba69834"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#a8b1b052eccdc8baab4271b9bbba69834">Command_Delete</a> ()</td></tr>
<tr class="memdesc:a8b1b052eccdc8baab4271b9bbba69834"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 DELETE command handler.  <a href="#a8b1b052eccdc8baab4271b9bbba69834">More...</a><br/></td></tr>
<tr class="separator:a8b1b052eccdc8baab4271b9bbba69834"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef2b8cfce823e4a4a1c253d2f9008ee4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="command_8h.html#aef2b8cfce823e4a4a1c253d2f9008ee4">Command_GetResponse</a> ()</td></tr>
<tr class="memdesc:aef2b8cfce823e4a4a1c253d2f9008ee4"><td class="mdescLeft">&#160;</td><td class="mdescRight">ISO 7816-4 GET RESPONSE command handler.  <a href="#aef2b8cfce823e4a4a1c253d2f9008ee4">More...</a><br/></td></tr>
<tr class="separator:aef2b8cfce823e4a4a1c253d2f9008ee4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Header file for command interpreter and ISO command handler. </p>
<dl class="section author"><dt>Author</dt><dd>Ricky Hariady (<a href="#" onclick="location.href='mai'+'lto:'+'ric'+'ky'+'.ha'+'ri'+'ady'+'@e'+'nte'+'r.'+'web'+'.i'+'d'; return false;">ricky<span style="display: none;">.nosp@m.</span>.har<span style="display: none;">.nosp@m.</span>iady@<span style="display: none;">.nosp@m.</span>ente<span style="display: none;">.nosp@m.</span>r.web<span style="display: none;">.nosp@m.</span>.id</a>)</dd></dl>
<dl class="section date"><dt>Date</dt><dd>7/10/2013 </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a8f8bc96429f97294f5c70c9d3d25f55e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_AppendRecord </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 APPEND RECORD command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="ab0fffd055068cf5e95b16290678821f0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_CreateFile </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 CREATE FILE command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="a8b1b052eccdc8baab4271b9bbba69834"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_Delete </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 DELETE command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="a6f140f75193a0588351eb754a7a120be"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_DeleteFile </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 DELETE FILE command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="aaeea089a78452852cffa694d230783f4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_ExternalAuth </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 INTERNAL_AUTH command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="a3b51f330868e469212300b68b462e5b1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_GetChallenge </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 GET RESPONSE command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="aef2b8cfce823e4a4a1c253d2f9008ee4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_GetResponse </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 GET RESPONSE command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="ad36cf4c26f564e47e18383d6c0b4b623"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_Install </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 INSTALL command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="af2b4480c24611cbf33f4d0846c3e29c5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_InternalAuth </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 INTERNAL_AUTH command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="ae80ba72ed08c11a9ce08702dadbf0fa3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_Interpreter </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Interpret command APDU and call appropriate command handler. </p>
<p>Call by main loop when finish receiving command APDU header,</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="ac7b94cbf3c426e64bf360955b4369623"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_Load </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 LOAD command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="a8030cdbe0ad5cd8b36164147a2d4a3cc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_ReadBinary </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 READ BINARY command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="ac18c20afe38175573a6fc6e97b1516eb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_ReadRecord </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 READ RECORD command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="a574398462bb87959eb9df7586669843c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_Select </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 SELECT command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and set corresponding response (status word)</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="ab0d6acbb997b0f8fddaba16d2dfe92d6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_UpdateBinary </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 UPDATE BINARY command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="a36a412a5d9fe2d9d84c018f484586660"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_UpdateRecord </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 UPDATE RECORD command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
<a class="anchor" id="a756c9456e6848064f619102fb09b1834"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Command_Verify </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ISO 7816-4 VERIFY command handler. </p>
<p>Call by CommandInterpreter(). Executed the selected command and return the response type and data back to apdu_res</p>
<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Jun 4 2014 18:13:31 for PintarOS by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.5
</small></address>
</body>
</html>
